Computer-aided design (CAD) software allows a user to construct and manipulate complex three-dimensional (3D) models of assembly designs. A number of different modeling techniques can be used to create the 3D assembly models. These techniques include solid modeling, wire-frame modeling, and surface modeling. Solid modeling techniques provide for topological 3D models, where the 3D model is a collection of interconnected edges and faces, for example. Geometrically, a 3D solid model is a collection of trimmed surfaces. The trimmed surfaces correspond to the topological faces bounded by the edges. Wire-frame modeling techniques, on the other hand, can be used to represent a model as a collection of simple 3D lines, whereas surface modeling can be used to represent a model as a collection of exterior surfaces. CAD systems may combine these, and other, modeling techniques. For example, parametric modeling techniques can be used to define various parameters for different components of a model and to define relationships between those components based on relationships between the various parameters. Solid modeling and parametric modeling can be combined in CAD systems to support parametric solid modeling.
In addition to supporting 3D objects, CAD systems may support two-dimensional (2D) objects. Whereas 3D representations of a model are commonly used to manipulate the model in three-space and visualize the model from different viewpoints, 2D representations of the model are generally used to formally document the design of a model. Two-dimensional drawings are typically created by a draftsman and given to a manufacturing engineer, and may serve as the basis of a design specification.
In the engineering field, CAD systems with 3D capabilities may also provide for orthographic 2D views of the left, right, top, bottom, front, and back sides of a model. These CAD systems may display more than one view of the model simultaneously on the system's cathode ray tube (CRT), with each view of the model appearing in a separate area of the CRT known as a drawing view area. For example, a CAD system may display a left view of a model in one drawing view area and a front view of a model in a second drawing view area on the CRT.
Engineers specialize in different phases of the design-to-manufacturing process, and therefore, acquire different modeling and design skills. Engineers employ particular modeling techniques depending on which aspects and representations of a model require their attention. In general, a design engineer deals with designing physical and aesthetic aspects of 3D models, and is skilled in 3D modeling techniques; whereas, a draftsman prepares formal 2D drawings that a manufacturing engineer may use to build the model, and therefore, is skilled in 2D rendering techniques.
The same individual may be responsible for designing a 3D model as well as formally documenting that model in 2D, and thus, the individual must be skilled in 3D modeling as well as drafting. Often, however, the design engineer and the draftsman are different individuals, both of whom require access to the same CAD model.
Part assemblies are not always static, so draftsmen need a mechanism for displaying alternative positions of an assembly model. Ideally, the alternative positions would be displayed in a single drawing view area. One position of the model may be overlaid on a second position of the model, thereby enabling a draftsman to easily visualize the model in motion and enabling a manufacturing engineer to do the same. Rendering alternative positions helps the draftsman and manufacturing engineer understand the degrees of freedom designed into the model (e.g., which parts of a model can move, how far the parts can move, and in which directions the parts can move due to the model's documented constraints).
Generally, CAD systems provide two methods for presenting alternative positions in the same drawing view area. Using the first method, the draftsman employs the 2D drawing capabilities of a CAD system to manually sketch assembly components that assume multiple positions a multiple number of times, once in each position that the draftsman needs to document. Manually drawing the same components in different positions is also the technique used to draw assemblies without the benefit of a CAD system. Re-drawing the same components is tedious because the method is not automated.
Using the second method to present alternative positions, a draftsman specifies one or more 2D transformations to apply to a group of sketched entities, then issues a command to the CAD system to apply the 2D transformations to the group, thereby copying the group of sketched entities to the alternative position. Only sketched entities that are repositioned by applying the same 2D transformations can be grouped together. Therefore, a draftsman may need to create several groups of moveable sketched entities and instruct the system to transform each group one at a time.
This second method can only be used when parts are transformed in two dimensions because a 2D CAD system, (or a 2D software module used for drafting functions), can only transform parts in two dimensions (e.g., in the x-y plane). If 3D transformations are necessary to illustrate assembly motion, the draftsman may need to manually sketch, in the 2D-drafting environment, each assembly component that needs to be transformed in three dimensions in order to portray the 3D motion in a two dimensions.
Both methods require the draftsman to improve the appearance of the drawing. For example, hidden lines must be manually removed in the areas where parts overlap. Additionally, line fonts must be manually changed to the “phantom” line font (in accordance with the industry standard), to distinguish the transformed parts.
State of the art 3D CAD applications, (such as SolidWorks 2000, available from SolidWorks Corporation of Concord, Mass.), allow a user to create one or more 3D configurations of an assembly during the modeling process. The purpose of creating 3D configurations is to allow the design engineer to represent a set of features and parameters for the same model (e.g., a set of features and parameters that modify a shape of an assembly component or a set of features and parameters that specify various part sizes). A 3D configuration cannot be created during the drafting process and the drafting software module is only capable of displaying one configuration per drawing view area. To display alternative positions, one configuration may be created to simulate an overlaid view of the alternative positions. This is accomplished during the 3D-modeling process by first constructing the initial position of the assembly and establishing constraints between the appropriate components, then reconstructing or making a copy of the moveable components in one or more alternative positions and repeating the operations that establish constraints between the appropriate components. During the 2D-drafting process, the draftsman must manually change the line fonts to the “phantom” line font for those components redrawn in an alternative position, thereby conforming to the industry standard for distinguishing alternative positions.
One problem with providing a general solution for creating 3D alternative positions during the 2D-drafting process is caused by the interconnections and dependencies of various components in the assembly. One component may move in the 2D x-y plane. The reaction of a second component that is attached to the first component may be to move with respect to a plane other than the 2D x-y plane. A 2D-drafting module cannot reconcile the 3D movement.
Another problem with providing a general solution for creating 3D alternative positions during the drafting process is designing a smooth transition between the 2D-drafting process and 3D-modeling process. The draftsman, skilled in 2D-drafting techniques, should not be burdened with the necessity of understanding 3D-modeling techniques used by a design engineer. Nor should the draftsman be burdened with the need to acquire the 3D-modeling skills required of a design engineer. The draftsman should be allowed to focus on the task at hand, that is, creating formal drawings.